ensureIsPhp($filePath); $parametersHash = SimpleParameterProvider::hash(); return \sha1($filePath . $parametersHash . VersionResolver::PACKAGE_VERSION); } private function ensureIsPhp(string $filePath) : void { $fileExtension = \pathinfo($filePath, \PATHINFO_EXTENSION); if ($fileExtension === 'php') { return; } throw new ShouldNotHappenException(\sprintf( // getRealPath() cannot be used, as it breaks in phar 'Provide only PHP file, ready for Dependency Injection. "%s" given', $filePath )); } }